The present invention relates to electronic circuits for controlling and driving electromagnetic actuators and, more particularly, to a single winding actuator commonly known as a voice coil motor (VCM).
Voice coil motors are used in many applications and, in particular, in hard disk drive (HDD) systems to position the read/write head over the tracks of the rotating disk, or on a suitably provided parking ramp. In recent HDD systems, the parking of the head is automatically commanded if the system is not correctly supplied, and when the controller commands it. A significant difference from older drives is in the arrangement of a parking ramp in correspondence to the most external part of the disk.
Commonly, the main function of the circuitry for parking the head on the ramp is to command the rotation swing of the arm of the VCM toward or away from the parking ramp. For such a function, it is generally necessary to generate a signal having an amplitude almost proportional to the instantaneous angular speed of the VCM. This information must be obtained from the motor itself.
The back electromotive force BEMF is proportional to the speed according to the following relation:   BEMF  =                    K        E            ·      ω        =                            K          E                armlength            ·      speed      
The variable KE is the proportionality coefficient between the angular velocity and the BEMF. Angular speed detection is commonly carried out according to a first approach (discontinuous mode) in which the output bridge stage driving the winding of the VCM is set to a high impedance condition (tristate), and after the current flowing in the winding has decayed to zero. The voltage on the nodes of the winding is read, thus providing a direct indication of the BEMF. A second approach (continuous mode) detects the BEMF by processing the voltage detected between the two output nodes of the bridge stage, and the current flowing in the winding of the motor.
In systems operating in a discontinuous mode, it is possible to implement the ramp loading and unloading operations of a head by using a logic circuit to drive the VCM moving the arm, and to carry out the ramp loading and unloading operations.
Known techniques of delivering current pulses only as a function of the speed of the arm during the parking operations on a ramp, and during the release and positioning of the head, do not account for the abrupt increase and decrease of the friction when the arm starts or ends its motion on the parking ramp.
This can cause the motor to be fed with current pulses of insufficient magnitude to generate a torque sufficient to overcome the abruptly increased friction force, or to be fed with current pulses of excessive magnitude. This causes an excessive ripple during a subsequent control of the speed of the arm over the tracks of the disk.
Another drawback of known systems is the overdriving of the VCM moving the head carrying arm when the arm reaches a commonly present mechanical stop at the top of the parking ramp. Such an overdriving interval is necessary to ensure the reaching of the parking position under all the contemplated conditions. This is in addition to the evident inefficiency, and the repeated mechanical stresses due to repeated rebounds of the arm against the mechanical stop.
The present invention provides a system and method for the above described inconveniences and drawbacks. According to a first aspect of the invention, a control procedure for an electromagnetic actuator controlling a swingable arm carrying a read write head that implements an adaptive control of the magnitude of the current pulses delivered to the winding of the electromagnetic actuator is provided. This is done by establishing a progressive increment of the amplitude of successively delivered current pulses of the same polarity if the detected BEMF remains in an unchanged relationship with pre-established lower and upper thresholds after each current pulse is delivered to the winding.
The amplitude of the driving current pulses provided to the winding of the electromagnetic actuator advantageously adapts automatically to varying frictional conditions or to any other cause of variation of the mechanical load of the actuator. These conditions occur when the arm moved by the motor starts to slide up or flies off the parking ramp.
At least three different situations can be identified according to the present invention in which the intensity of current pulses is usefully adapted. A first situation is at the arm release. At the issuing of the command for releasing the head, the arm moved by the VCM is parked on the ramp. Static friction and eventually even the parking landing geometry onto which the arm comes to rest causes the motor to overcome a relatively high initial resisting torque. In this situation, the system of the invention suitably delivers current pulses of relatively large amplitude. When the arm starts moving and its speed becomes close to the target range, the friction becomes more dynamic and is relatively lower than at the start. Therefore, the amplitude of the current pulses is progressively reduced.
A second situation is while regulating the speed. Speed regulation starts when the speed reaches a value within a target range or window. Both during unloading and loading, and while the arm is flying over the disk tracks or climbing the ramp, the torque required from the VCM is relatively small to avoid the generation of an excessive ripple.
A third situation is while braking. The most effective braking of the motion of a VCM includes saturating the driving bridge in the direction opposite to the direction of driving. Normally the control logic commands the braking when the actual speed exceeds a certain value. The system of the invention increases the effectiveness of the braking action by adaptively modifying the amplitude of the braking current pulses.
Essentially, the control procedure is for driving an electromagnetic actuator (VCM) for moving an arm carrying a read/write head through a circuit adapted to temporarily place in a high impedance state the output nodes to which the winding of the actuator is connected. This is done by comparing the detected BEMF with a pre-established lower threshold (BTHxe2x88x92) and upper threshold (BTHxe2x88x92), and a circuit for controlling and detecting the driving current.
The control procedure comprises delivering to the VCM a first current pulse of a certain polarity or of an opposite polarity depending on whether the BEMF is respectively smaller or greater than the pre-established lower and upper thresholds, respectively. The amplitude of successively delivered current pulses of the same polarity are progressively increased. According to a preferred embodiment of the invention, the incremental increasing of the amplitude of pulses of the same polarity successive to a first pulse is effected by comparing the driving current with a maximum threshold value (In+, Inxe2x88x92) that is adaptively increased starting from a base value. This is done as long as the detected BEMF remains in the same position referred to the pre-established lower and upper thresholds after each pulse.
For a hardware embodiment of the invention, the reading of the BEMF during the time interval between successive driving pulses and the monitoring of the current flowing through the winding of the electromagnetic actuator may be implemented by the addition of a window comparator. The comparator compares the detected current with a positive threshold and with a negative threshold. This is in case of driving in the opposite direction, whose value is incrementally and adaptively adjusted by the control logic that generates commands of direction and for placing the output half-bridges in a high impedance (tristate) state.
According to a further aspect of this invention, a procedure for verifying the reaching of the stop by the arm at the top end of the parking ramp may be optionally implemented to optimize the driving. This is done by interrupting the operation after a repeated detection of a null speed for a certain time interval. In this way, the overdriving of the VCM once the reaching of the mechanical stop is acknowledged, can be advantageously minimized without causing repeated mechanical stresses or acoustic noise, and with a reduced energy consumption.
Basically this optional routine periodically detects the BEMF, and resets a counter at every non-null detection, and increments the counter at each detection of a null value of the BEMF consecutive to a non-null detection and to any other null detection successive to the first one. Stopping the VCM is performed when a desired value is reached.